home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1993…ch: Other People's Memory / ADC Developer CD (1993-03) (''Other People's Memory'')_iso / Dev.CD Mar 93.iso / Development Platforms / Apple II / Essentials / MPW IIGS Interfaces / PIIGSIncludes / Shell.p < prev    next >
Encoding:
Text File  |  1992-02-26  |  7.5 KB  |  225 lines  |  [TEXT/MPS ]

  1. {********************************************
  2. ; File: Shell.p
  3. ;
  4. ;
  5. ; Copyright Apple Computer, Inc. 1986-92
  6. ; All Rights Reserved
  7. ;
  8. ********************************************}
  9.  
  10. UNIT SHELL;
  11. INTERFACE
  12. USES TYPES, GSOS;
  13.  
  14. TYPE
  15. GetLInfoPBPtr = ^GetLInfoPB;
  16. GetLInfoPB = PACKED RECORD
  17.     sfile : StringPtr; { address of source file name }
  18.     dfile : StringPtr; { address of output file name }
  19.     parms : StringPtr; { address of parameter list }
  20.     istring : StringPtr; { address of language specific input string }
  21.     merr : Byte; { max error level allowed }
  22.     merrf : Byte; { max error level found }
  23.     lops : Byte; { operations flag }
  24.     kflag : Byte; { KEEP flag }
  25.     mflags : Longint; { set of letters selected with '-' }
  26.     pflags : Longint; { set of letters selected with '+' }
  27.     org : Longint; { abs start address of non-relloc load file }
  28. END;
  29.  
  30. { GetLInfo/SetLInfo parameter block for level 1 calls }
  31. GetLInfoGSPBPtr = ^GetLInfoGSPB;
  32. GetLInfoGSPB = PACKED RECORD
  33.     pCount    :    Integer;            { parameter count }
  34.     sfile    :    StringPtr;            { address of source file name }
  35.     dfile    :    StringPtr;            { address of output file name }
  36.     parms    :    StringPtr;            { address of paramter list }
  37.     istring    :    StringPtr;            { address of language specific input string }
  38.     merr    :    Byte;                { max error level allowed }
  39.     merrf    :    Byte;                { max error level found }
  40.     lops    :    Byte;                { operations flag }
  41.     kflag    :    Byte;                { KEEP flag }
  42.     mflags    :    LongInt;            { set of letters selected with '-' }
  43.     pflags    :    LongInt;            { set of letters selected with '+' }
  44.     org        :    LongInt;            { abs start address of non-relloc load file }
  45. END;
  46.  
  47. { FastFile call parameter block for level 0 calls }
  48. FastFilePB = PACKED RECORD
  49.     action    :    Integer;            { action parameter }
  50.     index    :    Integer;            { index parameter }
  51.     flags    :    Integer;            { flags parameter }
  52.     file_handle : Handle;            { handle to contents of file }
  53.     file_length : LongInt;            { length of file in memory }
  54.     name    :    StringPtr;            { name of file }
  55.     access    :    Integer;            { access attribute }
  56.     file_type :    Integer;            { file type of file }
  57.     aux_type :    LongInt;            { aux type of file }
  58.     storage_type : Integer;            { storage type of file }
  59.     create_date : Integer;            { creation date of file }
  60.     create_time : Integer;            { creation time of file }
  61.     mod_date    : Integer;            { modification date of file }
  62.     mod_time    : Integer;            { modification time of file }
  63.     blocks_used : LongInt;            { blocks of disk space used by file }
  64. END;
  65.  
  66. { FastFile call parameter block for level 1 calls }
  67. FastFileGSPB = PACKED RECORD
  68.     pCount    :    Integer;            { parameter count }
  69.     action    :    Integer;            { action parameter }
  70.     index    :    Integer;            { index parameter }
  71.     flags    :    Integer;            { flags parameter }
  72.     fileHandle : Handle;            { handle to contents of file }
  73.     pathName :    Ptr;
  74.     access    :    Integer;            { access attribute }
  75.     fileType :    Integer;            { file type of file }
  76.     auxType    :    LongInt;            { aux type of file }
  77.     storageType : Integer;            { storage type of file }
  78.     createDate : TimeRec;            { creation date and time }
  79.     modDate    :    TimeRec;            { modification date and time }
  80.     option : ResultBuf255Ptr;        { option list }
  81.     fileLength : LongInt;            { length of file in memory }
  82.     blocksUsed : LongInt;            { blocks of disk space used by file }
  83. END;
  84.  
  85. { parameter block for GetIODevices and SetIODevices calls }
  86. IODevPBPtr = ^IODevPB;
  87. IODevPB = PACKED RECORD
  88.     output_type    :    Integer;
  89.     output_addr    :    ProcPtr;
  90.     error_type    :    Integer;
  91.     error_addr    :    ProcPtr;
  92.     input_type    :    Integer;
  93.     input_addr    :    ProcPtr;
  94. END;
  95.  
  96. IODevGSPBPtr = ^IODevGSPB;
  97. IODevGSPB = PACKED RECORD
  98.     pCount        :    Integer;
  99.     outputType    :    Integer;
  100.     outputAddr    :    ProcPtr;
  101.     errorType    :    Integer;
  102.     errorAddr    :    ProcPtr;
  103.     inputType    :    Integer;
  104.     inputAddr    :    ProcPtr;
  105. END;
  106.  
  107. { GetCommand call parameter block }
  108. GetCommandPB = PACKED RECORD
  109.     index    :    Integer;
  110.     restart    :    Integer;
  111.     __reserved__ : Integer;
  112.     command    :    Integer;
  113.     name    :    Array[0..15] of Char;
  114. END;
  115.  
  116. GetCommandGSPBPtr = ^GetCommandGSPB;
  117. GetCommandGSPB = PACKED RECORD
  118.     pCount    :    Integer;
  119.     index    :    Integer;
  120.     restart    :    Integer;
  121.     __reserved__ : Integer;
  122.     command    :    Integer;
  123.     name    :    String[15];
  124. END;
  125.  
  126. { ChangeVector call parameter block }
  127. ChangeVectorPB = PACKED RECORD
  128.     __reserved__ :    Integer;
  129.     vector        :    Integer;
  130.     procPtr        :    ProcPtr;
  131.     oldProcPtr    :    ProcPtr;
  132. END;
  133.  
  134. ChangeVectorGSPB = PACKED RECORD
  135.     pCount        :    Integer;
  136.     __reserved__ :    Integer;
  137.     vector        :    Integer;
  138.     procPtr        :    ProcPtr;
  139.     oldProcPtr    :    ProcPtr;
  140. END;
  141.  
  142. { parameter block for level 1 NextWildcard call }
  143. NextWildcardGSPB = PACKED RECORD
  144.     pCount        :    Integer;
  145.     pathName    :    ResultBuf255Ptr;
  146.     access        :    Integer;
  147.     fileType    :    Integer;
  148.     auxType        :    LongInt;
  149.     storageType    :    Integer;
  150.     createDate    :    TimeRec;
  151.     modDate        :    TimeRec;
  152.     option        :    Ptr;
  153.     EOF            :    LongInt;
  154.     blocksUsed    :    LongInt;
  155.     resourceEOF    :    LongInt;
  156.     resourceBlocks : LongInt;
  157. END;
  158.  
  159. Procedure CHANGE_VECTOR ( var pb : ChangeVectorPB ) ; C;
  160. Procedure CONSOLE_OUT ( oChar : Char ) ; C;
  161. PROCEDURE DIRECTION ( device:Integer; var direct: Integer)  ; C;
  162. PROCEDURE ERROR ( errorCode:Integer)  ; C;
  163. PROCEDURE EXECUTE ( flag:Integer; comm:Ptr)  ; C;
  164. Procedure EXPAND_DEVICES( name : StringPtr ); C;
  165. Procedure EXPORT(variable : StringPtr; flag : Integer); C;
  166. Procedure FASTFILE(var pb : FastFilePB); C;
  167. Procedure GET_COMMAND(var pb : GetCommandPB); C;
  168. Procedure GET_IO_DEVICES( pb : IODevPBPtr); C;
  169. FUNCTION  GET_LANG  : Integer ; C;
  170. PROCEDURE GET_LINFO ( PblockPtr:GetLInfoPBPtr)  ; C;
  171. PROCEDURE GET_VAR ( varname:StringPtr; value:StringPtr)  ; C;
  172. PROCEDURE INIT_WILDCARD ( initFile:StringPtr; flags:Integer)  ; C;
  173. PROCEDURE NEXT_WILDCARD ( nextFile:StringPtr); C;
  174. Procedure POP_VARIABLES;
  175.     Inline    $22, $E100A8, $0117, $0, $0, $0, $0;
  176. Procedure PUSH_VARIABLES;
  177.     Inline    $22, $E100A8, $0118, $0, $0, $0, $0, $8F, '_toolErr';
  178. PROCEDURE READ_INDEXED ( varname:StringPtr; value:StringPtr; index:Integer)  ; C;
  179. Procedure READ_VARIABLE ( varname:StringPtr; value:StringPtr); C;
  180. PROCEDURE REDIRECT ( device:Integer; app:Integer; theFile:StringPtr)  ; C;
  181. Procedure SET_IO_DEVICES(pb : IODevPBPtr); C;
  182. PROCEDURE SET_LANG ( language:Integer)  ; C;
  183. PROCEDURE SET_LINFO ( PblockPtr:GetLInfoPBPtr)  ; C;
  184. Procedure SET_STOP_FLAG(flag : Integer); C;
  185. PROCEDURE SET_VAR ( varname:StringPtr; value:StringPtr)  ; C;
  186. FUNCTION  STOP  : Integer ; C;
  187. Procedure UNSET_VARIABLE( name : StringPtr ); C;
  188. FUNCTION  VERSION  : Longint ; C;
  189. PROCEDURE WRITE_CONSOLE ( ochar:Char )  ; C;
  190.  
  191. {    New ORCA 2.0 level 1 calls                }
  192.  
  193. Procedure ChangeVectorGS( var pb : ChangeVectorGSPB); C;
  194. Procedure ConsoleOutGS( oChar : Char ); C;
  195. Function DirectionGS(device : Integer) : Integer; C;
  196. Procedure ErrorGS( errorCode : Integer ); C;
  197. Procedure ExecuteGS( flag : Integer; comm : Ptr); C;
  198. Function ExpandDevicesGS(name : StringPtr) : StringPtr;
  199. Procedure ExportGS(name : StringPtr; flags : Integer);
  200. Procedure FastFileGS(var pb : FastFileGSPB); C;
  201. Function GetCommandGS( index : Integer) : GetCommandGSPBPtr;
  202. Function GetIODevicesGS : IODevGSPBPtr;
  203. Function GetLangGS : Integer; C;
  204. Function GetLInfoGS : GetLInfoGSPBPtr;
  205. Function GetVarGS( variable : StringPtr) : StringPtr;
  206. Procedure InitWildcardGS(name : StringPtr; flags : Integer);
  207. Function NextWildcardGS : StringPtr;
  208. Procedure PopVariablesGS;
  209. Procedure PushVariablesGS;
  210. Procedure ReadIndexedGS(var name, value : StringPtr; index : Integer);
  211. Function ReadVariableGS(name : StringPtr) : StringPtr;
  212. Procedure RedirectGS(device, app : Integer; theFile : StringPtr);
  213. Procedure SetIODevicesGS(parms : IODevGSPBPtr); C;
  214. Procedure SetLangGS(language : Integer); C;
  215. Procedure SetLInfoGS(parmsPtr : GetLInfoGSPBPtr);
  216. Procedure SetStopFlagGS(flag : Integer); C;
  217. Procedure SetVarGS(name, value : StringPtr; exportFlag : Integer);
  218. Function StopGS : Integer; C;
  219. Procedure UnsetVariableGS(name : StringPtr);
  220. Function VersionGS : LongInt; C;
  221. Procedure WriteConsoleGS( oChar : Char); C;
  222.  
  223. IMPLEMENTATION
  224. END.
  225.